package com.gqh.weather.validation;

import com.gqh.weather.util.ValidationUtil;

import jakarta.validation.ConstraintValidator;
import jakarta.validation.ConstraintValidatorContext;

/**
 * 城市码验证器
 */
public class CitycodeValidator implements ConstraintValidator<Citycode, String> {

    @Override
    public void initialize(Citycode constraintAnnotation) {
        // 初始化方法，可以为空
    }

    @Override
    public boolean isValid(String value, ConstraintValidatorContext context) {
        // 如果值为空，让其他验证注解处理（如@NotBlank）
        if (value == null || value.trim().isEmpty()) {
            return true;
        }

        return ValidationUtil.isValidCitycode(value);
    }
}